<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  

  
  <title>Hexo</title>
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  <meta name="description" content="this.$router.push vue跳转不同页面的多种方法 1：router-link跳转 2：this.$router.push()   第一种方式：path - query 传参  第二种方式：name - params传参数 但是一般情况下，传参数是传递一个对象，当传递的是一个对象的时候   第一种方式：path - query 传参   第二种方式：name - params传参数">
<meta property="og:type" content="article">
<meta property="og:title" content="Hexo">
<meta property="og:url" content="http://example.com/2021/07/18/%E8%B7%AF%E7%94%B1%E8%B7%B3%E8%BD%AC/index.html">
<meta property="og:site_name" content="Hexo">
<meta property="og:description" content="this.$router.push vue跳转不同页面的多种方法 1：router-link跳转 2：this.$router.push()   第一种方式：path - query 传参  第二种方式：name - params传参数 但是一般情况下，传参数是传递一个对象，当传递的是一个对象的时候   第一种方式：path - query 传参   第二种方式：name - params传参数">
<meta property="og:locale" content="en_US">
<meta property="article:published_time" content="2021-07-18T02:48:04.296Z">
<meta property="article:modified_time" content="2021-06-06T13:42:56.957Z">
<meta property="article:author" content="John Doe">
<meta name="twitter:card" content="summary">
  
    <link rel="alternate" href="/atom.xml" title="Hexo" type="application/atom+xml">
  
  
    <link rel="icon" href="/favicon.png">
  
  
    <link href="//fonts.googleapis.com/css?family=Source+Code+Pro" rel="stylesheet" type="text/css">
  
  
<link rel="stylesheet" href="/css/style.css">

<meta name="generator" content="Hexo 5.4.0"></head>

<body>
  <div id="container">
    <div id="wrap">
      <header id="header">
  <div id="banner"></div>
  <div id="header-outer" class="outer">
    <div id="header-title" class="inner">
      <h1 id="logo-wrap">
        <a href="/" id="logo">Hexo</a>
      </h1>
      
    </div>
    <div id="header-inner" class="inner">
      <nav id="main-nav">
        <a id="main-nav-toggle" class="nav-icon"></a>
        
          <a class="main-nav-link" href="/">Home</a>
        
          <a class="main-nav-link" href="/archives">Archives</a>
        
      </nav>
      <nav id="sub-nav">
        
          <a id="nav-rss-link" class="nav-icon" href="/atom.xml" title="RSS Feed"></a>
        
        <a id="nav-search-btn" class="nav-icon" title="Search"></a>
      </nav>
      <div id="search-form-wrap">
        <form action="//google.com/search" method="get" accept-charset="UTF-8" class="search-form"><input type="search" name="q" class="search-form-input" placeholder="Search"><button type="submit" class="search-form-submit">&#xF002;</button><input type="hidden" name="sitesearch" value="http://example.com"></form>
      </div>
    </div>
  </div>
</header>
      <div class="outer">
        <section id="main"><article id="post-路由跳转" class="article article-type-post" itemscope itemprop="blogPost">
  <div class="article-meta">
    <a href="/2021/07/18/%E8%B7%AF%E7%94%B1%E8%B7%B3%E8%BD%AC/" class="article-date">
  <time datetime="2021-07-18T02:48:04.296Z" itemprop="datePublished">2021-07-18</time>
</a>
    
  </div>
  <div class="article-inner">
    
    
    <div class="article-entry" itemprop="articleBody">
      
        <p>this.$router.push</p>
<p>vue跳转不同页面的多种方法</p>
<p>1：router-link跳转</p>
<p>2：this.$router.push()</p>
<p>  第一种方式：path - query 传参</p>
<p> 第二种方式：name - params传参数</p>
<p>但是一般情况下，传参数是传递一个对象，当传递的是一个对象的时候</p>
<p>  第一种方式：path - query 传参 </p>
<p> 第二种方式：name - params传参数</p>
<p>3：a标签可以跳转么？？可以跳转外部链接，不能路由跳转</p>
<p>接收方怎么接收参数？？<code>this.$route.query.serid和this.$route.params.setid</code></p>
<p>注意接收参数时是 $route 不是 $router </p>
<p><strong>知识点补充：vue三种不同方式实现页面跳转</strong></p>
<p>Vue：router-lin</p>
<p>this.$router.push(“/“);</p>
<p>this.$router.go(1);</p>
<p>vue 路由跳转四种方式 (带参数)</p>
<ol>
<li> router-link</li>
<li>不带参数</li>
</ol>
<router-link :to="{name:'home'}"> 
<router-link :to="{path:'/home'}"> //name,path都行, 建议用name  
// 注意：router-link中链接如果是'/'开始就是从根路由开始，如果开始不带'/'，则从当前路由开始。

 

<p>2.带参数</p>
<router-link :to="{name:'home', params: {id:1}}">  

<p>// params传参数 (类似post)<br>// 路由配置 path: “/home/:id” 或者 path: “/home:id”<br>// 不配置path ,第一次可请求,刷新页面id会消失<br>// 配置path,刷新页面id会保留</p>
<p>// html 取参  $route.params.id<br>// script 取参  this.$route.params.id</p>
<router-link :to="{name:'home', query: {id:1}}"> 

<p>// query传参数 (类似get,url后面会显示参数)<br>// 路由可不配置</p>
<p>// html 取参  $route.query.id<br>// script 取参  this.$route.query.id</p>
<ol start="2">
<li> this.$router.push() (函数里面调用)</li>
<li> 不带参数</li>
</ol>
<p>this.$router.push(‘/home’)<br>this.$router.push({name:’home’})<br>this.$router.push({path:’/home’})</p>
<ol start="2">
<li>query传参 </li>
</ol>
<p>this.$router.push({name:’home’,query: {id:’1’}})<br>this.$router.push({path:’/home’,query: {id:’1’}})</p>
<p>// html 取参  $route.query.id<br>// script 取参  this.$route.query.id</p>
<ol start="3">
<li>params传参</li>
</ol>
<p>this.$router.push({name:’home’,params: {id:’1’}})  // 只能用 name</p>
<p>// 路由配置 path: “/home/:id” 或者 path: “/home:id” ,<br>// 不配置path ,第一次可请求,刷新页面id会消失<br>// 配置path,刷新页面id会保留</p>
<p>// html 取参  $route.params.id<br>// script 取参  this.$route.params.id</p>
<ol start="4">
<li>query和params区别<br>query类似 get, 跳转之后页面 url后面会拼接参数,类似?id=1, 非重要性的可以这样传, 密码之类还是用params刷新页面id还在</li>
</ol>
<p>params类似 post, 跳转之后页面 url后面不会拼接参数 , 但是刷新页面id 会消失</p>
<ol start="3">
<li> this.$router.replace() (用法同上,push)</li>
<li> this.$router.go(n)<br>this.$router.go(n)<br>向前或者向后跳转n个页面，n可为正整数或负整数<br>ps : 区别</li>
</ol>
<p>this.$router.push<br>跳转到指定url路径，并想history栈中添加一个记录，点击后退会返回到上一个页面<br>this.$router.replace<br>跳转到指定url路径，但是history栈中不会有记录，点击返回会跳转到上上个页面 (就是直接替换了当前页面)</p>
<p>this.$router.go(n)<br>向前或者向后跳转n个页面，n可为正整数或负整数</p>

      
    </div>
    <footer class="article-footer">
      <a data-url="http://example.com/2021/07/18/%E8%B7%AF%E7%94%B1%E8%B7%B3%E8%BD%AC/" data-id="ckr8lt4sn000x20qwgke94ow9" class="article-share-link">Share</a>
      
      
    </footer>
  </div>
  
    
<nav id="article-nav">
  
    <a href="/2021/07/18/%E7%80%91%E5%B8%83%E6%B5%81/" id="article-nav-newer" class="article-nav-link-wrap">
      <strong class="article-nav-caption">Newer</strong>
      <div class="article-nav-title">
        
          (no title)
        
      </div>
    </a>
  
  
    <a href="/2021/07/18/%E6%87%92%E5%8A%A0%E8%BD%BD/" id="article-nav-older" class="article-nav-link-wrap">
      <strong class="article-nav-caption">Older</strong>
      <div class="article-nav-title"></div>
    </a>
  
</nav>

  
</article>

</section>
        
          <aside id="sidebar">
  
    

  
    

  
    
  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Archives</h3>
    <div class="widget">
      <ul class="archive-list"><li class="archive-list-item"><a class="archive-list-link" href="/archives/2021/07/">July 2021</a></li></ul>
    </div>
  </div>


  
    
  <div class="widget-wrap">
    <h3 class="widget-title">Recent Posts</h3>
    <div class="widget">
      <ul>
        
          <li>
            <a href="/2021/07/18/%E6%99%BA%E8%83%BD%E5%8C%96%E8%B7%A8%E7%AB%AF/">(no title)</a>
          </li>
        
          <li>
            <a href="/2021/07/18/%E5%9F%9F%E8%A7%A3%E6%9E%90/">(no title)</a>
          </li>
        
          <li>
            <a href="/2021/07/18/%E6%97%A0%E9%99%90%E7%BA%A7%E7%9B%AE%E5%BD%95%E6%A0%91/">(no title)</a>
          </li>
        
          <li>
            <a href="/2021/07/18/%E6%96%87%E5%AD%97%E5%B1%85%E4%B8%AD/">(no title)</a>
          </li>
        
          <li>
            <a href="/2021/07/18/%E5%BE%AE%E6%A0%BC%E5%BC%8F/">(no title)</a>
          </li>
        
      </ul>
    </div>
  </div>

  
</aside>
        
      </div>
      <footer id="footer">
  
  <div class="outer">
    <div id="footer-info" class="inner">
      &copy; 2021 John Doe<br>
      Powered by <a href="http://hexo.io/" target="_blank">Hexo</a>
    </div>
  </div>
</footer>
    </div>
    <nav id="mobile-nav">
  
    <a href="/" class="mobile-nav-link">Home</a>
  
    <a href="/archives" class="mobile-nav-link">Archives</a>
  
</nav>
    

<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>


  
<link rel="stylesheet" href="/fancybox/jquery.fancybox.css">

  
<script src="/fancybox/jquery.fancybox.pack.js"></script>




<script src="/js/script.js"></script>




  </div>
</body>
</html>